ContinueWhenAll(TResult) Method (Task[], Func(Task[], TResult))

Task Parallel System.Threading

Creates a continuation Task that will be started upon the completion of a set of provided Tasks.

Namespace:  System.Threading.Tasks
Assembly:  System.Threading (in System.Threading.dll)

Syntax

Visual Basic (Declaration)
Public Function ContinueWhenAll(Of TResult) ( _
	tasks As Task(), _
	continuationFunction As Func(Of Task(), TResult) _
) As Task(Of TResult)
C#
public Task<TResult> ContinueWhenAll<TResult>(
	Task[] tasks,
	Func<Task[], TResult> continuationFunction
)

Parameters

tasks
Type: array< System.Threading.Tasks..::.Task >[]()[]
The array of tasks from which to continue.
continuationFunction
Type: System..::.Func<(Of <(array< Task >[]()[], TResult>)>)
The function delegate to execute when all tasks in the tasks array have completed.

Type Parameters

TResult
The type of the result that is returned by the continuationFunction delegate and associated with the created Task<(Of <(TResult>)>).

Return Value

The new continuation Task<(Of <(TResult>)>).

Exceptions

ExceptionCondition
System..::.ArgumentNullExceptionThe exception that is thrown when the tasks array is null.
System..::.ArgumentNullExceptionThe exception that is thrown when the continuationFunction argument is null.
System..::.ArgumentExceptionThe exception that is thrown when the tasks array contains a null value.
System..::.ArgumentExceptionThe exception that is thrown when the tasks array is empty.
System..::.ObjectDisposedExceptionThe exception that is thrown when one of the elements in the tasks array has been disposed.

See Also